﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MvcApplicationClasses.Controllers
{
    public class CadastroController : Controller
    {
        //
        // GET: /Cadastro/

        MvcApplicationClasses.Models.CadastroModels _models = new Models.CadastroModels();



        public ActionResult Aluno(int? id = 0)
        {
            if (id.Value != 0)
            {
                Models.tbAluno aluno = _models.BuscarAluno(id.Value);
                if (aluno != null)
                {
                    ViewData["nome"] = aluno.Nome;
                    ViewData["ra"] = aluno.Ra == 0 ? "" : aluno.Ra.ToString();
                }
            }
            ViewData["alunos"] = _models.ListarAlunos();
            
            return View();
        }


        [AcceptVerbs(HttpVerbs.Post)]
        public ActionResult Aluno(string txtNome, string txtRa)
        {
            Models.tbAluno aluno = new Models.tbAluno();
            aluno.Nome = txtNome;
            aluno.Ra = Convert.ToInt32(txtRa);

            _models.InserirAluno(aluno);

            return Aluno();
        }


        [AcceptVerbs(HttpVerbs.Post)]
        public void AlterarCadastro(string txtNome, string txtRa)
        {
            Models.tbAluno aluno = new Models.tbAluno();
            aluno.Nome = txtNome;
            aluno.Ra = Convert.ToInt32(txtRa);

            _models.AlterarAluno(aluno);

            Response.Redirect("/Cadastro/Aluno");
            
        }

        public void ExcluirAluno(int id)
        {
            Models.tbAluno aluno = new Models.tbAluno();
            aluno.Ra = id;
            _models.ExcluirAluno(aluno);

            Response.Redirect("/Cadastro/Aluno");
        }

        
        public ActionResult Disciplina()
        {
            return View();
        }

        public ActionResult Home()
        {
            return View();
        }

        public ActionResult Matricular()
        {
            return View();
        }
    }
}
